今天要介紹的是LCD~假如今天要使用arduino來輸出文字,就會使用到LCD~LCD是負責顯示文字用的。
用模擬器抓出LCD後,會看到LCD上有很多個引角~
那引腳要連接到哪個腳位,還蠻多的~就大概說一下:
VSS:接地,三個GND選其中一個就可以了。
VDD:電源供應,接5v、3.3v、Vin都可以(接其他供電腳位可能會顯示不良)。
RS:D0~D13找其中一個就可以了。
RW:接地腳位,三個GND選一個。
E:D0~D13找一個還沒用過的就可以了。
D4:D0~D13找一個還沒用過的就可以了。
D5:D0~D13找一個還沒用過的就可以了。
D6:D0~D13找一個還沒用過的就可以了。
D7:D0~D13找一個還沒用過的就可以了。
A:供電腳位(5v、3.3v、Vin)。
K:接地腳位,三個GND選一個。
其他沒提到的腳位,可以不用接。
接著是寫Code的部分,使用LCD的話會需要一個標投檔-
#include <LiquidCrystal.h>
引用LCD的library~來使用LCD的功能。
如果是使用模擬器,那第一次使用的話,編譯後可能會說你沒有下載他的library,並引導你下載,只要下載一下就可以了~
在下載好library後,還需要寫入一個東西:
LiquidCrystal lcd( RS腳位, E腳位, D4腳位, D5腳位, D6腳位, D7腳位 );
剛剛在接線的時候,這六個腳位不是都有各自接上一個數位腳位嗎~這邊要把這六個腳位按照順序寫入,要讓板子知道lcd的幾個特定引腳接上了哪個腳位,LCD才能顯示出東西喔~
然後因為這邊名字是取「lcd」(在LiquidCrystal之後),所以之後如果要對LCD做指令,就是「lcd.function()」這樣使用。
這邊就介紹幾個常用到的LCD功能:
這邊是使用範例:
程式碼另外寫一下:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,10,9,8,7);
void setup()
{
lcd.begin(16,2);
lcd.print("Hello");
}
void loop()
{
delay(1000);
lcd.print("hi");
delay(1000);
lcd.clear();
lcd.setCursor(1,1);
}
一開始我在lcd畫面印出「Hello」,並且持續1秒(loop第一行有delay(1000)),接著印出hi,hi會接著印在Hello之後,因為沒有對游標做任何設置,在印好Hello後游標就待在(0,5),所以hi就從(0,5)開始接著印。
接著再持續一秒,遇到lcd.clear(),所以lcd的畫面會清空、然後游標移到(1,1)的位子,所以畫面清空一秒後,會在(1,1)的地方開始印「hi」,再繼續維持一秒、清空且設置游標在(1,1)持續一秒、在(1,1)印「hi」、這樣不斷重複,直到結束執行。
那LCD還有一個部分,就是他每一排其實都有40格,只是會顯示在畫面上的只有16格的位子,至於要顯示出16以後的值,就要靠位移的function。
這部分會到之後介紹keypad時介紹~
今天就先這樣~